﻿namespace Lab1.Classes
{
    /// <summary>
    /// Большинство консервативных алгоритмов основано на вычис-лении LBTS 
    /// (Lower Bound on the Time Stamp – Нижняя граница вре-менных меток) будущих сообщений, 
    /// которые могут быть получены логическим процессом. 
    /// Этот механизм позволяет определить, является ли очередной событие из списка необработанных событий безопас-ным.
    /// 
    /// Процессы отсылают нулевые сообщения по всем выходным ду-гам после обработки очередного события. 
    /// Нулевое сообщение служит дополнительной информацией для того, чтобы определить очередное безопасное событие.
    ///  </summary>
    public class EngineLBTS : IEngine
    {
        public Shop Shop { get; private set; }
        public Bank Bank { get; private set; }
        public Customer Customer { get; private set; }

        public EngineLBTS()
        {
            Shop = new Shop(this);
            Bank = new Bank(this);
            Customer = new Customer(this);
        }
    }
}
